import type { UserAuthItem, UserInfo } from '@/utils/auth'

export type UserStoreType = {
  userInfo: UserInfo<number>
  accessToken: string
  verificationCode: string
  userAuth: Array<UserAuthItem> | null
  menuAuth: Set<string>
  operationAuth: Map<string, Set<string>>
}

export type setType = {
  title?: string
  fixedHeader?: boolean
  hiddenSideBar: boolean
  collapseSideBar: boolean
  panel?: boolean
  tabsMode?: TabsModeStyle
  configure?: StorageConfigs
}

export type multiType = {
  path: string
  name: string
  meta: any
  query?: object
  params?: object
}

export type positionType = {
  startIndex?: number
  length?: number
}
